home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 April: Mac OS SDK / Dev.CD Apr 96 SDK / Dev.CD Apr 96 SDK1.toast / Development Kits (Disc 1) / OpenDoc / Environment Additions / Symantec / Additions / SOM (SPM) / somcls.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-10-27  |  27.4 KB  |  819 lines  |  [TEXT/MPS ]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: :SOMobjects™ for Mac OS:MPW Additions:Interfaces:CIncludes:somcls.h.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.18
  7.  *     SOM Emitter emith.dll: 2.33
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *      Copyright:    © 1994,1995 by Apple Computer, Inc.
  13.  *                  All rights reserved.
  14.  * 
  15.  *    10H9767, 10H9769  (C) COPYRIGHT International Business Machines Corp. 1992,1994
  16.  *    All Rights Reserved
  17.  *    Licensed Materials - Property of IBM
  18.  *    US Government Users Restricted Rights - Use, duplication or
  19.  *    disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  20.  * 
  21.  *   SOMObject: System Object Model root class
  22.  */
  23.  
  24.  
  25. #ifndef SOM_SOMClass_h
  26. #define SOM_SOMClass_h
  27.  
  28.  
  29. #include <som.h>
  30.  
  31. /*
  32.  * -- This emitter treats Method Tokens as Thunks by default.
  33.  * -- Use the sc modifier "nothunks" to change this default
  34.  */
  35. #undef somresolve_
  36. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  37.  
  38. /*
  39.  * Define the class name as an object type
  40.  */
  41. #ifndef SOMClass
  42. #define SOMClass SOMObject
  43. #endif
  44. #include <somobj.h>
  45.  
  46. /*
  47.  * Start of user-defined types:
  48.  */
  49. #ifndef SOMClass
  50.     #define SOMClass SOMObject
  51. #endif /* SOMClass */
  52. #ifndef SOMObject
  53.     #define SOMObject SOMObject
  54. #endif /* SOMObject */
  55. #ifndef _IDL_SEQUENCE_SOMClass_defined
  56. #define _IDL_SEQUENCE_SOMClass_defined
  57. typedef struct {
  58.     unsigned long _maximum;
  59.     unsigned long _length;
  60.     SOMClass **_buffer;
  61. } _IDL_SEQUENCE_SOMClass;
  62. #endif /* _IDL_SEQUENCE_SOMClass_defined */ 
  63. typedef
  64. _IDL_SEQUENCE_SOMClass SOMClass_SOMClassSequence;
  65.  
  66. /*
  67.  *  a sequence of classes
  68.  *  These methods are expected to be invoked by SOM clients
  69.  */
  70.  
  71. #ifndef SOM_DONT_USE_SHORT_NAMES
  72.  
  73. #ifndef SOM_DONT_USE_SHORT_NAMES
  74. #ifndef SOMTGD_SOMClassSequence
  75.     #ifdef SOMClassSequence
  76.         #undef SOMClassSequence
  77.         #define SOMTGD_SOMClassSequence 1
  78.     #else
  79.         #define SOMClassSequence SOMClass_SOMClassSequence
  80.     #endif /* SOMClassSequence */
  81. #endif /* SOMTGD_SOMClassSequence */
  82. #endif /* SOM_DONT_USE_SHORT_NAMES */
  83. #endif /* SOM_DONT_USE_SHORT_NAMES */
  84.  
  85. /*
  86.  * End of user-defined types.
  87.  */
  88.  
  89. #define SOMClass_MajorVersion 70
  90. #define SOMClass_MinorVersion 1
  91.  
  92. /*
  93.  * External name shortening if required
  94.  */
  95. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  96. #define SOMClassClassData sommcd
  97. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  98. /*--------------Migration------------*/
  99.  
  100. #ifdef OLDIBMSOMAPISUPPORT
  101. #define SOMClass_classObj somNewClassReference(SOMClass)
  102. #define _SOMClass SOMClass_classObj
  103. #define SOMClassCClassData SOMClassClassData
  104. #define SOMClassNewClass(major,minor) somNewVersionedClassReference(SOMClass,major,minor)
  105. #endif
  106.  
  107. /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
  108. #define SOMClassMetaClass SOMClass
  109.  
  110.  
  111. /*
  112.  * Declare the class data structure
  113.  */
  114. SOMEXTERN struct SOMClassClassDataStructure {
  115. #ifdef OLDIBMSOMAPISUPPORT
  116.     SOMAny            *classObject;    /* always zero, use somNewClassReference instead */
  117. #else
  118.     long zero;
  119. #endif
  120.     somStaticClassInfo *sci;
  121.     somDToken        instanceDataToken;
  122.     long reserved [3];
  123.     somMToken somNew;
  124.     somMToken somRenew;
  125.     somMToken somClassReady;
  126.     somMToken somGetName;
  127.     somMToken somDescendedFrom;
  128.     somMToken somCheckVersion;
  129.     somMToken somFindMethod;
  130.     somMToken somFindMethodOk;
  131.     somMToken somSupportsMethod;
  132.     somMToken somGetNumMethods;
  133.     somMToken somGetInstanceSize;
  134.     somMToken somGetInstancePartSize;
  135.     somMToken somGetMethodIndex;
  136.     somMToken somGetNumStaticMethods;
  137.     somMToken somAddDynamicMethod;
  138.     somMToken somFindSMethod;
  139.     somMToken somFindSMethodOk;
  140.     somMToken somGetMethodDescriptor;
  141.     somMToken somGetNthMethodInfo;
  142.     somMToken somNewNoInit;
  143.     somMToken somRenewNoInit;
  144.     somMToken somGetInstanceToken;
  145.     somMToken somGetMethodData;
  146.     somMToken somGetMethodToken;
  147.     somMToken somGetParents;
  148.     somMToken somGetVersionNumbers;
  149.     somMToken somLookupMethod;
  150.     somMToken somRenewNoZero;
  151.     somMToken somRenewNoInitNoZero;
  152.     somMToken somAllocate;
  153.     somMToken somDeallocate;
  154.     somMToken somGetNthMethodData;
  155.     somMToken somMakeDynamicClassReference;
  156. } SOMDLINK SOMClassClassData;
  157.  
  158. #if !defined(SOMClass_Class_Source) && !defined(SOM_Module_somcls_Source)
  159. #if PRAGMA_IMPORT_SUPPORTED
  160. #pragma import list SOMClassClassData
  161. #endif
  162. #endif
  163.  
  164.  
  165. /*
  166.  * New macro for SOMClass
  167.  */
  168. #define SOMClassNew() somNewObject(SOMClass)
  169.  
  170. /*
  171.  * New Method: somNew
  172.  */
  173. typedef SOMObject*   (SOMLINK *somTD_SOMClass_somNew)(SOMClass *somSelf);
  174. #define somMD_SOMClass_somNew "::SOMClass::somNew"
  175. #define SOMClass_somNew(somSelf) \
  176.     (SOM_Resolve(somSelf, SOMClass, somNew) \
  177.     (somSelf))
  178. #ifndef SOMGD_somNew
  179.     #if defined _somNew || defined __somNew
  180.         #undef _somNew
  181.         #undef __somNew
  182.         #define SOMGD_somNew 1
  183.     #else
  184.         #define _somNew SOMClass_somNew
  185.     #endif /* _somNew */
  186. #endif /* SOMGD_somNew */
  187.  
  188. /*
  189.  * New Method: somMakeDynamicClassReference
  190.  */
  191. typedef boolean   (SOMLINK *somTD_SOMClass_somMakeDynamicClassReference)(SOMClass *somSelf);
  192. #define somMD_SOMClass_somMakeDynamicClassReference "::SOMClass::somMakeDynamicClassReference"
  193. #define SOMClass_somMakeDynamicClassReference(somSelf) \
  194.     (SOM_Resolve(somSelf, SOMClass, somMakeDynamicClassReference) \
  195.     (somSelf))
  196. #ifndef SOMGD_somMakeDynamicClassReference
  197.     #if defined _somMakeDynamicClassReference || defined __somMakeDynamicClassReference
  198.         #undef _somMakeDynamicClassReference
  199.         #undef __somMakeDynamicClassReference
  200.         #define SOMGD_somMakeDynamicClassReference 1
  201.     #else
  202.         #define _somMakeDynamicClassReference SOMClass_somMakeDynamicClassReference
  203.     #endif /* _somMakeDynamicClassReference */
  204. #endif /* SOMGD_somMakeDynamicClassReference */
  205.  
  206. /*
  207.  * New Method: somGetInstancePartSize
  208.  */
  209. typedef long   (SOMLINK *somTD_SOMClass_somGetInstancePartSize)(SOMClass *somSelf);
  210. #define somMD_SOMClass_somGetInstancePartSize "::SOMClass::somGetInstancePartSize"
  211. #define SOMClass_somGetInstancePartSize(somSelf) \
  212.     (SOM_Resolve(somSelf, SOMClass, somGetInstancePartSize) \
  213.     (somSelf))
  214. #ifndef SOMGD_somGetInstancePartSize
  215.     #if defined _somGetInstancePartSize || defined __somGetInstancePartSize
  216.         #undef _somGetInstancePartSize
  217.         #undef __somGetInstancePartSize
  218.         #define SOMGD_somGetInstancePartSize 1
  219.     #else
  220.         #define _somGetInstancePartSize SOMClass_somGetInstancePartSize
  221.     #endif /* _somGetInstancePartSize */
  222. #endif /* SOMGD_somGetInstancePartSize */
  223.  
  224. /*
  225.  * New Method: somGetInstanceSize
  226.  */
  227. typedef long   (SOMLINK *somTD_SOMClass_somGetInstanceSize)(SOMClass *somSelf);
  228. #define somMD_SOMClass_somGetInstanceSize "::SOMClass::somGetInstanceSize"
  229. #define SOMClass_somGetInstanceSize(somSelf) \
  230.     (SOM_Resolve(somSelf, SOMClass, somGetInstanceSize) \
  231.     (somSelf))
  232. #ifndef SOMGD_somGetInstanceSize
  233.     #if defined _somGetInstanceSize || defined __somGetInstanceSize
  234.         #undef _somGetInstanceSize
  235.         #undef __somGetInstanceSize
  236.         #define SOMGD_somGetInstanceSize 1
  237.     #else
  238.         #define _somGetInstanceSize SOMClass_somGetInstanceSize
  239.     #endif /* _somGetInstanceSize */
  240. #endif /* SOMGD_somGetInstanceSize */
  241.  
  242. /*
  243.  * New Method: somGetName
  244.  */
  245. typedef corbastring   (SOMLINK *somTD_SOMClass_somGetName)(SOMClass *somSelf);
  246. #define somMD_SOMClass_somGetName "::SOMClass::somGetName"
  247. #define SOMClass_somGetName(somSelf) \
  248.     (SOM_Resolve(somSelf, SOMClass, somGetName) \
  249.     (somSelf))
  250. #ifndef SOMGD_somGetName
  251.     #if defined _somGetName || defined __somGetName
  252.         #undef _somGetName
  253.         #undef __somGetName
  254.         #define SOMGD_somGetName 1
  255.     #else
  256.         #define _somGetName SOMClass_somGetName
  257.     #endif /* _somGetName */
  258. #endif /* SOMGD_somGetName */
  259.  
  260. /*
  261.  * New Method: somGetInstanceToken
  262.  */
  263. typedef somDToken   (SOMLINK *somTD_SOMClass_somGetInstanceToken)(SOMClass *somSelf);
  264. #define somMD_SOMClass_somGetInstanceToken "::SOMClass::somGetInstanceToken"
  265. #define SOMClass_somGetInstanceToken(somSelf) \
  266.     (SOM_Resolve(somSelf, SOMClass, somGetInstanceToken) \
  267.     (somSelf))
  268. #ifndef SOMGD_somGetInstanceToken
  269.     #if defined _somGetInstanceToken || defined __somGetInstanceToken
  270.         #undef _somGetInstanceToken
  271.         #undef __somGetInstanceToken
  272.         #define SOMGD_somGetInstanceToken 1
  273.     #else
  274.         #define _somGetInstanceToken SOMClass_somGetInstanceToken
  275.     #endif /* _somGetInstanceToken */
  276. #endif /* SOMGD_somGetInstanceToken */
  277.  
  278. /*
  279.  * New Method: somGetNumMethods
  280.  */
  281. typedef long   (SOMLINK *somTD_SOMClass_somGetNumMethods)(SOMClass *somSelf);
  282. #define somMD_SOMClass_somGetNumMethods "::SOMClass::somGetNumMethods"
  283. #define SOMClass_somGetNumMethods(somSelf) \
  284.     (SOM_Resolve(somSelf, SOMClass, somGetNumMethods) \
  285.     (somSelf))
  286. #ifndef SOMGD_somGetNumMethods
  287.     #if defined _somGetNumMethods || defined __somGetNumMethods
  288.         #undef _somGetNumMethods
  289.         #undef __somGetNumMethods
  290.         #define SOMGD_somGetNumMethods 1
  291.     #else
  292.         #define _somGetNumMethods SOMClass_somGetNumMethods
  293.     #endif /* _somGetNumMethods */
  294. #endif /* SOMGD_somGetNumMethods */
  295.  
  296. /*
  297.  * New Method: somGetNumStaticMethods
  298.  */
  299. typedef long   (SOMLINK *somTD_SOMClass_somGetNumStaticMethods)(SOMClass *somSelf);
  300. #define somMD_SOMClass_somGetNumStaticMethods "::SOMClass::somGetNumStaticMethods"
  301. #define SOMClass_somGetNumStaticMethods(somSelf) \
  302.     (SOM_Resolve(somSelf, SOMClass, somGetNumStaticMethods) \
  303.     (somSelf))
  304. #ifndef SOMGD_somGetNumStaticMethods
  305.     #if defined _somGetNumStaticMethods || defined __somGetNumStaticMethods
  306.         #undef _somGetNumStaticMethods
  307.         #undef __somGetNumStaticMethods
  308.         #define SOMGD_somGetNumStaticMethods 1
  309.     #else
  310.         #define _somGetNumStaticMethods SOMClass_somGetNumStaticMethods
  311.     #endif /* _somGetNumStaticMethods */
  312. #endif /* SOMGD_somGetNumStaticMethods */
  313.  
  314. /*
  315.  * New Method: somGetMethodData
  316.  */
  317. typedef boolean   (SOMLINK *somTD_SOMClass_somGetMethodData)(SOMClass *somSelf,
  318.         somId methodId,
  319.         somMethodData* md);
  320. #define somMD_SOMClass_somGetMethodData "::SOMClass::somGetMethodData"
  321. #define SOMClass_somGetMethodData(somSelf,methodId,md) \
  322.     (SOM_Resolve(somSelf, SOMClass, somGetMethodData) \
  323.     (somSelf,methodId,md))
  324. #ifndef SOMGD_somGetMethodData
  325.     #if defined _somGetMethodData || defined __somGetMethodData
  326.         #undef _somGetMethodData
  327.         #undef __somGetMethodData
  328.         #define SOMGD_somGetMethodData 1
  329.     #else
  330.         #define _somGetMethodData SOMClass_somGetMethodData
  331.     #endif /* _somGetMethodData */
  332. #endif /* SOMGD_somGetMethodData */
  333.  
  334. /*
  335.  * New Method: somGetMethodDescriptor
  336.  */
  337. typedef somKernelId   (SOMLINK *somTD_SOMClass_somGetMethodDescriptor)(SOMClass *somSelf,
  338.         somId methodId);
  339. #define somMD_SOMClass_somGetMethodDescriptor "::SOMClass::somGetMethodDescriptor"
  340. #define SOMClass_somGetMethodDescriptor(somSelf,methodId) \
  341.     (SOM_Resolve(somSelf, SOMClass, somGetMethodDescriptor) \
  342.     (somSelf,methodId))
  343. #ifndef SOMGD_somGetMethodDescriptor
  344.     #if defined _somGetMethodDescriptor || defined __somGetMethodDescriptor
  345.         #undef _somGetMethodDescriptor
  346.         #undef __somGetMethodDescriptor
  347.         #define SOMGD_somGetMethodDescriptor 1
  348.     #else
  349.         #define _somGetMethodDescriptor SOMClass_somGetMethodDescriptor
  350.     #endif /* _somGetMethodDescriptor */
  351. #endif /* SOMGD_somGetMethodDescriptor */
  352.  
  353. /*
  354.  * New Method: somGetMethodToken
  355.  */
  356. typedef somMToken   (SOMLINK *somTD_SOMClass_somGetMethodToken)(SOMClass *somSelf,
  357.         somId methodId);
  358. #define somMD_SOMClass_somGetMethodToken "::SOMClass::somGetMethodToken"
  359. #define SOMClass_somGetMethodToken(somSelf,methodId) \
  360.     (SOM_Resolve(somSelf, SOMClass, somGetMethodToken) \
  361.     (somSelf,methodId))
  362. #ifndef SOMGD_somGetMethodToken
  363.     #if defined _somGetMethodToken || defined __somGetMethodToken
  364.         #undef _somGetMethodToken
  365.         #undef __somGetMethodToken
  366.         #define SOMGD_somGetMethodToken 1
  367.     #else
  368.         #define _somGetMethodToken SOMClass_somGetMethodToken
  369.     #endif /* _somGetMethodToken */
  370. #endif /* SOMGD_somGetMethodToken */
  371.  
  372. /*
  373.  * New Method: somAddDynamicMethod
  374.  */
  375. typedef void   (SOMLINK *somTD_SOMClass_somAddDynamicMethod)(SOMClass *somSelf,
  376.         somId methodId,
  377.         somId methodDescriptor,
  378.         somMethodPtr method,
  379.         somMethodPtr applyStub);
  380. #define somMD_SOMClass_somAddDynamicMethod "::SOMClass::somAddDynamicMethod"
  381. #define SOMClass_somAddDynamicMethod(somSelf,methodId,methodDescriptor,method,applyStub) \
  382.     (SOM_Resolve(somSelf, SOMClass, somAddDynamicMethod) \
  383.     (somSelf,methodId,methodDescriptor,method,applyStub))
  384. #ifndef SOMGD_somAddDynamicMethod
  385.     #if defined _somAddDynamicMethod || defined __somAddDynamicMethod
  386.         #undef _somAddDynamicMethod
  387.         #undef __somAddDynamicMethod
  388.         #define SOMGD_somAddDynamicMethod 1
  389.     #else
  390.         #define _somAddDynamicMethod SOMClass_somAddDynamicMethod
  391.     #endif /* _somAddDynamicMethod */
  392. #endif /* SOMGD_somAddDynamicMethod */
  393.  
  394. /*
  395.  * New Method: somGetMethodIndex
  396.  */
  397. typedef long   (SOMLINK *somTD_SOMClass_somGetMethodIndex)(SOMClass *somSelf,
  398.         somId id);
  399. #define somMD_SOMClass_somGetMethodIndex "::SOMClass::somGetMethodIndex"
  400. #define SOMClass_somGetMethodIndex(somSelf,id) \
  401.     (SOM_Resolve(somSelf, SOMClass, somGetMethodIndex) \
  402.     (somSelf,id))
  403. #ifndef SOMGD_somGetMethodIndex
  404.     #if defined _somGetMethodIndex || defined __somGetMethodIndex
  405.         #undef _somGetMethodIndex
  406.         #undef __somGetMethodIndex
  407.         #define SOMGD_somGetMethodIndex 1
  408.     #else
  409.         #define _somGetMethodIndex SOMClass_somGetMethodIndex
  410.     #endif /* _somGetMethodIndex */
  411. #endif /* SOMGD_somGetMethodIndex */
  412.  
  413. /*
  414.  * New Method: somGetNthMethodData
  415.  */
  416. typedef boolean   (SOMLINK *somTD_SOMClass_somGetNthMethodData)(SOMClass *somSelf,
  417.         long n,
  418.         somMethodData* md);
  419. #define somMD_SOMClass_somGetNthMethodData "::SOMClass::somGetNthMethodData"
  420. #define SOMClass_somGetNthMethodData(somSelf,n,md) \
  421.     (SOM_Resolve(somSelf, SOMClass, somGetNthMethodData) \
  422.     (somSelf,n,md))
  423. #ifndef SOMGD_somGetNthMethodData
  424.     #if defined _somGetNthMethodData || defined __somGetNthMethodData
  425.         #undef _somGetNthMethodData
  426.         #undef __somGetNthMethodData
  427.         #define SOMGD_somGetNthMethodData 1
  428.     #else
  429.         #define _somGetNthMethodData SOMClass_somGetNthMethodData
  430.     #endif /* _somGetNthMethodData */
  431. #endif /* SOMGD_somGetNthMethodData */
  432.  
  433. /*
  434.  * New Method: somGetNthMethodInfo
  435.  */
  436. typedef somKernelId   (SOMLINK *somTD_SOMClass_somGetNthMethodInfo)(SOMClass *somSelf,
  437.         long n,
  438.         somKernelId* descriptor);
  439. #define somMD_SOMClass_somGetNthMethodInfo "::SOMClass::somGetNthMethodInfo"
  440. #define SOMClass_somGetNthMethodInfo(somSelf,n,descriptor) \
  441.     (SOM_Resolve(somSelf, SOMClass, somGetNthMethodInfo) \
  442.     (somSelf,n,descriptor))
  443. #ifndef SOMGD_somGetNthMethodInfo
  444.     #if defined _somGetNthMethodInfo || defined __somGetNthMethodInfo
  445.         #undef _somGetNthMethodInfo
  446.         #undef __somGetNthMethodInfo
  447.         #define SOMGD_somGetNthMethodInfo 1
  448.     #else
  449.         #define _somGetNthMethodInfo SOMClass_somGetNthMethodInfo
  450.     #endif /* _somGetNthMethodInfo */
  451. #endif /* SOMGD_somGetNthMethodInfo */
  452.  
  453. /*
  454.  * New Method: somFindMethod
  455.  */
  456. typedef boolean   (SOMLINK *somTD_SOMClass_somFindMethod)(SOMClass *somSelf,
  457.         somId methodId,
  458.         somMethodPtr* m);
  459. #define somMD_SOMClass_somFindMethod "::SOMClass::somFindMethod"
  460. #define SOMClass_somFindMethod(somSelf,methodId,m) \
  461.     (SOM_Resolve(somSelf, SOMClass, somFindMethod) \
  462.     (somSelf,methodId,m))
  463. #ifndef SOMGD_somFindMethod
  464.     #if defined _somFindMethod || defined __somFindMethod
  465.         #undef _somFindMethod
  466.         #undef __somFindMethod
  467.         #define SOMGD_somFindMethod 1
  468.     #else
  469.         #define _somFindMethod SOMClass_somFindMethod
  470.     #endif /* _somFindMethod */
  471. #endif /* SOMGD_somFindMethod */
  472.  
  473. /*
  474.  * New Method: somFindMethodOk
  475.  */
  476. typedef boolean   (SOMLINK *somTD_SOMClass_somFindMethodOk)(SOMClass *somSelf,
  477.         somId methodId,
  478.         somMethodPtr* m);
  479. #define somMD_SOMClass_somFindMethodOk "::SOMClass::somFindMethodOk"
  480. #define SOMClass_somFindMethodOk(somSelf,methodId,m) \
  481.     (SOM_Resolve(somSelf, SOMClass, somFindMethodOk) \
  482.     (somSelf,methodId,m))
  483. #ifndef SOMGD_somFindMethodOk
  484.     #if defined _somFindMethodOk || defined __somFindMethodOk
  485.         #undef _somFindMethodOk
  486.         #undef __somFindMethodOk
  487.         #define SOMGD_somFindMethodOk 1
  488.     #else
  489.         #define _somFindMethodOk SOMClass_somFindMethodOk
  490.     #endif /* _somFindMethodOk */
  491. #endif /* SOMGD_somFindMethodOk */
  492.  
  493. /*
  494.  * New Method: somFindSMethod
  495.  */
  496. typedef somMethodPtr   (SOMLINK *somTD_SOMClass_somFindSMethod)(SOMClass *somSelf,
  497.         somId methodId);
  498. #define somMD_SOMClass_somFindSMethod "::SOMClass::somFindSMethod"
  499. #define SOMClass_somFindSMethod(somSelf,methodId) \
  500.     (SOM_Resolve(somSelf, SOMClass, somFindSMethod) \
  501.     (somSelf,methodId))
  502. #ifndef SOMGD_somFindSMethod
  503.     #if defined _somFindSMethod || defined __somFindSMethod
  504.         #undef _somFindSMethod
  505.         #undef __somFindSMethod
  506.         #define SOMGD_somFindSMethod 1
  507.     #else
  508.         #define _somFindSMethod SOMClass_somFindSMethod
  509.     #endif /* _somFindSMethod */
  510. #endif /* SOMGD_somFindSMethod */
  511.  
  512. /*
  513.  * New Method: somFindSMethodOk
  514.  */
  515. typedef somMethodPtr   (SOMLINK *somTD_SOMClass_somFindSMethodOk)(SOMClass *somSelf,
  516.         somId methodId);
  517. #define somMD_SOMClass_somFindSMethodOk "::SOMClass::somFindSMethodOk"
  518. #define SOMClass_somFindSMethodOk(somSelf,methodId) \
  519.     (SOM_Resolve(somSelf, SOMClass, somFindSMethodOk) \
  520.     (somSelf,methodId))
  521. #ifndef SOMGD_somFindSMethodOk
  522.     #if defined _somFindSMethodOk || defined __somFindSMethodOk
  523.         #undef _somFindSMethodOk
  524.         #undef __somFindSMethodOk
  525.         #define SOMGD_somFindSMethodOk 1
  526.     #else
  527.         #define _somFindSMethodOk SOMClass_somFindSMethodOk
  528.     #endif /* _somFindSMethodOk */
  529. #endif /* SOMGD_somFindSMethodOk */
  530.  
  531. /*
  532.  * New Method: somLookupMethod
  533.  */
  534. typedef somMethodPtr   (SOMLINK *somTD_SOMClass_somLookupMethod)(SOMClass *somSelf,
  535.         somId methodId);
  536. #define somMD_SOMClass_somLookupMethod "::SOMClass::somLookupMethod"
  537. #define SOMClass_somLookupMethod(somSelf,methodId) \
  538.     (SOM_Resolve(somSelf, SOMClass, somLookupMethod) \
  539.     (somSelf,methodId))
  540. #ifndef SOMGD_somLookupMethod
  541.     #if defined _somLookupMethod || defined __somLookupMethod
  542.         #undef _somLookupMethod
  543.         #undef __somLookupMethod
  544.         #define SOMGD_somLookupMethod 1
  545.     #else
  546.         #define _somLookupMethod SOMClass_somLookupMethod
  547.     #endif /* _somLookupMethod */
  548. #endif /* SOMGD_somLookupMethod */
  549.  
  550. /*
  551.  * New Method: somAllocate
  552.  */
  553. typedef corbastring   (SOMLINK *somTD_SOMClass_somAllocate)(SOMClass *somSelf,
  554.         long size);
  555. #define somMD_SOMClass_somAllocate "::SOMClass::somAllocate"
  556. #define SOMClass_somAllocate(somSelf,size) \
  557.     (SOM_Resolve(somSelf, SOMClass, somAllocate) \
  558.     (somSelf,size))
  559. #ifndef SOMGD_somAllocate
  560.     #if defined _somAllocate || defined __somAllocate
  561.         #undef _somAllocate
  562.         #undef __somAllocate
  563.         #define SOMGD_somAllocate 1
  564.     #else
  565.         #define _somAllocate SOMClass_somAllocate
  566.     #endif /* _somAllocate */
  567. #endif /* SOMGD_somAllocate */
  568.  
  569. /*
  570.  * New Method: somDeallocate
  571.  */
  572. typedef void   (SOMLINK *somTD_SOMClass_somDeallocate)(SOMClass *somSelf,
  573.         corbastring memptr);
  574. #define somMD_SOMClass_somDeallocate "::SOMClass::somDeallocate"
  575. #define SOMClass_somDeallocate(somSelf,memptr) \
  576.     (SOM_Resolve(somSelf, SOMClass, somDeallocate) \
  577.     (somSelf,memptr))
  578. #ifndef SOMGD_somDeallocate
  579.     #if defined _somDeallocate || defined __somDeallocate
  580.         #undef _somDeallocate
  581.         #undef __somDeallocate
  582.         #define SOMGD_somDeallocate 1
  583.     #else
  584.         #define _somDeallocate SOMClass_somDeallocate
  585.     #endif /* _somDeallocate */
  586. #endif /* SOMGD_somDeallocate */
  587.  
  588. /*
  589.  * New Method: somClassReady
  590.  */
  591. typedef void   (SOMLINK *somTD_SOMClass_somClassReady)(SOMClass *somSelf);
  592. #define somMD_SOMClass_somClassReady "::SOMClass::somClassReady"
  593. #define SOMClass_somClassReady(somSelf) \
  594.     (SOM_Resolve(somSelf, SOMClass, somClassReady) \
  595.     (somSelf))
  596. #ifndef SOMGD_somClassReady
  597.     #if defined _somClassReady || defined __somClassReady
  598.         #undef _somClassReady
  599.         #undef __somClassReady
  600.         #define SOMGD_somClassReady 1
  601.     #else
  602.         #define _somClassReady SOMClass_somClassReady
  603.     #endif /* _somClassReady */
  604. #endif /* SOMGD_somClassReady */
  605.  
  606. /*
  607.  * New Method: somGetVersionNumbers
  608.  */
  609. typedef void   (SOMLINK *somTD_SOMClass_somGetVersionNumbers)(SOMClass *somSelf,
  610.         long* majorVersion,
  611.         long* minorVersion);
  612. #define somMD_SOMClass_somGetVersionNumbers "::SOMClass::somGetVersionNumbers"
  613. #define SOMClass_somGetVersionNumbers(somSelf,majorVersion,minorVersion) \
  614.     (SOM_Resolve(somSelf, SOMClass, somGetVersionNumbers) \
  615.     (somSelf,majorVersion,minorVersion))
  616. #ifndef SOMGD_somGetVersionNumbers
  617.     #if defined _somGetVersionNumbers || defined __somGetVersionNumbers
  618.         #undef _somGetVersionNumbers
  619.         #undef __somGetVersionNumbers
  620.         #define SOMGD_somGetVersionNumbers 1
  621.     #else
  622.         #define _somGetVersionNumbers SOMClass_somGetVersionNumbers
  623.     #endif /* _somGetVersionNumbers */
  624. #endif /* SOMGD_somGetVersionNumbers */
  625.  
  626. /*
  627.  * New Method: somCheckVersion
  628.  */
  629. typedef boolean   (SOMLINK *somTD_SOMClass_somCheckVersion)(SOMClass *somSelf,
  630.         long majorVersion,
  631.         long minorVersion);
  632. #define somMD_SOMClass_somCheckVersion "::SOMClass::somCheckVersion"
  633. #define SOMClass_somCheckVersion(somSelf,majorVersion,minorVersion) \
  634.     (SOM_Resolve(somSelf, SOMClass, somCheckVersion) \
  635.     (somSelf,majorVersion,minorVersion))
  636. #ifndef SOMGD_somCheckVersion
  637.     #if defined _somCheckVersion || defined __somCheckVersion
  638.         #undef _somCheckVersion
  639.         #undef __somCheckVersion
  640.         #define SOMGD_somCheckVersion 1
  641.     #else
  642.         #define _somCheckVersion SOMClass_somCheckVersion
  643.     #endif /* _somCheckVersion */
  644. #endif /* SOMGD_somCheckVersion */
  645.  
  646. /*
  647.  * New Method: somDescendedFrom
  648.  */
  649. typedef boolean   (SOMLINK *somTD_SOMClass_somDescendedFrom)(SOMClass *somSelf,
  650.         SOMClass* aClassObj);
  651. #define somMD_SOMClass_somDescendedFrom "::SOMClass::somDescendedFrom"
  652. #define SOMClass_somDescendedFrom(somSelf,aClassObj) \
  653.     (SOM_Resolve(somSelf, SOMClass, somDescendedFrom) \
  654.     (somSelf,aClassObj))
  655. #ifndef SOMGD_somDescendedFrom
  656.     #if defined _somDescendedFrom || defined __somDescendedFrom
  657.         #undef _somDescendedFrom
  658.         #undef __somDescendedFrom
  659.         #define SOMGD_somDescendedFrom 1
  660.     #else
  661.         #define _somDescendedFrom SOMClass_somDescendedFrom
  662.     #endif /* _somDescendedFrom */
  663. #endif /* SOMGD_somDescendedFrom */
  664.  
  665. /*
  666.  * New Method: somSupportsMethod
  667.  */
  668. typedef boolean   (SOMLINK *somTD_SOMClass_somSupportsMethod)(SOMClass *somSelf,
  669.         somId mId);
  670. #define somMD_SOMClass_somSupportsMethod "::SOMClass::somSupportsMethod"
  671. #define SOMClass_somSupportsMethod(somSelf,mId) \
  672.     (SOM_Resolve(somSelf, SOMClass, somSupportsMethod) \
  673.     (somSelf,mId))
  674. #ifndef SOMGD_somSupportsMethod
  675.     #if defined _somSupportsMethod || defined __somSupportsMethod
  676.         #undef _somSupportsMethod
  677.         #undef __somSupportsMethod
  678.         #define SOMGD_somSupportsMethod 1
  679.     #else
  680.         #define _somSupportsMethod SOMClass_somSupportsMethod
  681.     #endif /* _somSupportsMethod */
  682. #endif /* SOMGD_somSupportsMethod */
  683.  
  684. /*
  685.  * New Method: somNewNoInit
  686.  */
  687. typedef SOMObject*   (SOMLINK *somTD_SOMClass_somNewNoInit)(SOMClass *somSelf);
  688. #define somMD_SOMClass_somNewNoInit "::SOMClass::somNewNoInit"
  689. #define SOMClass_somNewNoInit(somSelf) \
  690.     (SOM_Resolve(somSelf, SOMClass, somNewNoInit) \
  691.     (somSelf))
  692. #ifndef SOMGD_somNewNoInit
  693.     #if defined _somNewNoInit || defined __somNewNoInit
  694.         #undef _somNewNoInit
  695.         #undef __somNewNoInit
  696.         #define SOMGD_somNewNoInit 1
  697.     #else
  698.         #define _somNewNoInit SOMClass_somNewNoInit
  699.     #endif /* _somNewNoInit */
  700. #endif /* SOMGD_somNewNoInit */
  701.  
  702. /*
  703.  * New Method: somRenew
  704.  */
  705. typedef SOMObject*   (SOMLINK *somTD_SOMClass_somRenew)(SOMClass *somSelf,
  706.         void* memptr);
  707. #define somMD_SOMClass_somRenew "::SOMClass::somRenew"
  708. #define SOMClass_somRenew(somSelf,memptr) \
  709.     (SOM_Resolve(somSelf, SOMClass, somRenew) \
  710.     (somSelf,memptr))
  711. #ifndef SOMGD_somRenew
  712.     #if defined _somRenew || defined __somRenew
  713.         #undef _somRenew
  714.         #undef __somRenew
  715.         #define SOMGD_somRenew 1
  716.     #else
  717.         #define _somRenew SOMClass_somRenew
  718.     #endif /* _somRenew */
  719. #endif /* SOMGD_somRenew */
  720.  
  721. /*
  722.  * New Method: somRenewNoInit
  723.  */
  724. typedef SOMObject*   (SOMLINK *somTD_SOMClass_somRenewNoInit)(SOMClass *somSelf,
  725.         void* memptr);
  726. #define somMD_SOMClass_somRenewNoInit "::SOMClass::somRenewNoInit"
  727. #define SOMClass_somRenewNoInit(somSelf,memptr) \
  728.     (SOM_Resolve(somSelf, SOMClass, somRenewNoInit) \
  729.     (somSelf,memptr))
  730. #ifndef SOMGD_somRenewNoInit
  731.     #if defined _somRenewNoInit || defined __somRenewNoInit
  732.         #undef _somRenewNoInit
  733.         #undef __somRenewNoInit
  734.         #define SOMGD_somRenewNoInit 1
  735.     #else
  736.         #define _somRenewNoInit SOMClass_somRenewNoInit
  737.     #endif /* _somRenewNoInit */
  738. #endif /* SOMGD_somRenewNoInit */
  739.  
  740. /*
  741.  * New Method: somRenewNoZero
  742.  */
  743. typedef SOMObject*   (SOMLINK *somTD_SOMClass_somRenewNoZero)(SOMClass *somSelf,
  744.         void* memptr);
  745. #define somMD_SOMClass_somRenewNoZero "::SOMClass::somRenewNoZero"
  746. #define SOMClass_somRenewNoZero(somSelf,memptr) \
  747.     (SOM_Resolve(somSelf, SOMClass, somRenewNoZero) \
  748.     (somSelf,memptr))
  749. #ifndef SOMGD_somRenewNoZero
  750.     #if defined _somRenewNoZero || defined __somRenewNoZero
  751.         #undef _somRenewNoZero
  752.         #undef __somRenewNoZero
  753.         #define SOMGD_somRenewNoZero 1
  754.     #else
  755.         #define _somRenewNoZero SOMClass_somRenewNoZero
  756.     #endif /* _somRenewNoZero */
  757. #endif /* SOMGD_somRenewNoZero */
  758.  
  759. /*
  760.  * New Method: somRenewNoInitNoZero
  761.  */
  762. typedef SOMObject*   (SOMLINK *somTD_SOMClass_somRenewNoInitNoZero)(SOMClass *somSelf,
  763.         void* memptr);
  764. #define somMD_SOMClass_somRenewNoInitNoZero "::SOMClass::somRenewNoInitNoZero"
  765. #define SOMClass_somRenewNoInitNoZero(somSelf,memptr) \
  766.     (SOM_Resolve(somSelf, SOMClass, somRenewNoInitNoZero) \
  767.     (somSelf,memptr))
  768. #ifndef SOMGD_somRenewNoInitNoZero
  769.     #if defined _somRenewNoInitNoZero || defined __somRenewNoInitNoZero
  770.         #undef _somRenewNoInitNoZero
  771.         #undef __somRenewNoInitNoZero
  772.         #define SOMGD_somRenewNoInitNoZero 1
  773.     #else
  774.         #define _somRenewNoInitNoZero SOMClass_somRenewNoInitNoZero
  775.     #endif /* _somRenewNoInitNoZero */
  776. #endif /* SOMGD_somRenewNoInitNoZero */
  777.  
  778. /*
  779.  * New Method: somGetParents
  780.  */
  781. typedef SOMClass_SOMClassSequence   (SOMLINK *somTD_SOMClass_somGetParents)(SOMClass *somSelf);
  782. #define somMD_SOMClass_somGetParents "::SOMClass::somGetParents"
  783. #define SOMClass_somGetParents(somSelf) \
  784.     (SOM_Resolve(somSelf, SOMClass, somGetParents) \
  785.     (somSelf))
  786. #ifndef SOMGD_somGetParents
  787.     #if defined _somGetParents || defined __somGetParents
  788.         #undef _somGetParents
  789.         #undef __somGetParents
  790.         #define SOMGD_somGetParents 1
  791.     #else
  792.         #define _somGetParents SOMClass_somGetParents
  793.     #endif /* _somGetParents */
  794. #endif /* SOMGD_somGetParents */
  795. #ifndef SOM_DONT_USE_INHERITED_MACROS
  796. #define SOMClass_somInit SOMObject_somInit
  797. #define SOMClass_somUninit SOMObject_somUninit
  798. #define SOMClass_somDuplicateReference SOMObject_somDuplicateReference
  799. #define SOMClass_somCompareReference SOMObject_somCompareReference
  800. #define SOMClass_somRelease SOMObject_somRelease
  801. #define SOMClass_somFree SOMObject_somFree
  802. #define SOMClass_somCanDelete SOMObject_somCanDelete
  803. #define SOMClass_somGetClass SOMObject_somGetClass
  804. #define SOMClass_somGetClassName SOMObject_somGetClassName
  805. #define SOMClass_somGetSize SOMObject_somGetSize
  806. #define SOMClass_somIsA SOMObject_somIsA
  807. #define SOMClass_somRespondsTo SOMObject_somRespondsTo
  808. #define SOMClass_somIsInstanceOf SOMObject_somIsInstanceOf
  809. #define SOMClass_somDispatch SOMObject_somDispatch
  810. #define SOMClass_somClassDispatch SOMObject_somClassDispatch
  811. #define SOMClass_somCastObj SOMObject_somCastObj
  812. #define SOMClass_somResetObj SOMObject_somResetObj
  813. #define SOMClass_somPrintSelf SOMObject_somPrintSelf
  814. #define SOMClass_somDumpSelf SOMObject_somDumpSelf
  815. #define SOMClass_somDumpSelfInt SOMObject_somDumpSelfInt
  816. #endif /* SOM_DONT_USE_INHERITED_MACROS */
  817.  
  818. #endif       /* SOM_SOMClass_h */
  819.